<script>
    import {
        message,
        request
    } from './api';
    export default {
        // 此处globalData为了演示其作用，不是uView框架的一部分
        globalData: {
            username: '白居易'
        },
        onLaunch() {
            // 1.1.0版本之前关于http拦截器代码，已平滑移动到/common/http.interceptor.js中
            // 注意，需要在/main.js中实例化Vue之后引入如下(详见文档说明)：
            // import httpInterceptor from '@/common/http.interceptor.js'
            // Vue.use(httpInterceptor, app)
            // process.env.VUE_APP_PLATFORM 为通过js判断平台名称的方法，结果分别如下：
            /**
             * h5，app-plus(nvue下也为app-plus)，mp-weixin，mp-alipay......
             */
            uni.hideTabBar();
        },
        onShow() {
            uni.hideTabBar();
        },
        watch: {
            "$route": async (to, from) => {
                // 跳转前的操作
                if (to.path === "/" || to.path === "/pages/index/index" || to.path === "/pages/login/index" || to
                    .path === "/pages/account/index") {
                    return;
                }
                try {
                    const res = await request.get("/login/getUserInfo", {});
                    if (res.code >= 0) {
                        uni.setStorageSync("userInfo", JSON.stringify(res.data));
                    } else {
                        window.location.href = "/pages/login/index";
                    }
                } catch (e) {
                    uni.navigateTo({
                        url: "/pages/login/index"
                    })
                }
            }
        }
    }
</script>

<style lang="scss">
    @import "uview-ui/index.scss";
    @import "common/demo.scss";
</style>